       .def _DSP28x_usDelay

;====================================================
;Delay Function 
;The C assembly call will look as follows: 
;
;  extern void Delay(long time);                

;        MOV   AL,#LowLoopCount
;        MOV   AH,#HighLoopCount
;        LCR   _Delay
;
;Or as follows (if count is less then 16-bits):
;
;        MOV   ACC,#LoopCount
;        LCR   _Delay


        .global  __DSP28x_usDelay
_DSP28x_usDelay:
        SUB    ACC,#1
        BF     _DSP28x_usDelay,GEQ    ;; Loop if ACC >= 0
        LRETR 

;There is a 9/10 cycle overhead and each loop
;takes five cycles. The LoopCount is given by
;the following formula:

;  DELAY_CPU_CYLES = 9 + 5*LoopCount

; LoopCount = (DELAY_CPU_CYCLES - 9) / 5

;==================================================
